package com.base.cn.platform.os.dao.statistics.goods;

import com.base.cn.platform.os.common.mybatis.BaseDao;
import com.base.cn.platform.os.entity.statistics.goods.ZStatisticsGoodsUVCount;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 商品UV统计Dao
 *
 * @author s.li
 * @date 2019/04/24
 */
@Mapper
public interface ZStatisticsGoodsUVCountDao extends BaseDao<ZStatisticsGoodsUVCount> {

    /**
     * 访客榜 TOP5 之 商品
     * @param clazz
     * @param timeSql
     * @return List<ZStatisticsGoodsUVCount>
     */
    List<ZStatisticsGoodsUVCount> queryUVTopFiveGoodsList(@Param("clazz") Class<ZStatisticsGoodsUVCount> clazz,
                                                          @Param("timeSql") String timeSql);

    /**
     * 访客榜 TOP5 之 商品
     * @param clazz
     * @param params
     * @return List<ZStatisticsGoodsUVCount>
     */
    List<ZStatisticsGoodsUVCount> queryGoodsUVCountList(@Param("clazz") Class<ZStatisticsGoodsUVCount> clazz,
                                                          @Param("params") Map<String,String> params);


    /**
     * 查询商品UV总量
     * @param clazz
     * @param timeSql
     * @return List<ZStatisticsGoodsUVCount>
     */
    List<ZStatisticsGoodsUVCount> queryGoodsSumUVCountList(@Param("clazz") Class<ZStatisticsGoodsUVCount> clazz,
                                                           @Param("timeSql") String timeSql);


}
